package com.bytz.modules.cms.reseller.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.bytz.modules.cms.reseller.entity.CouponReseller;

import java.util.List;

/**
 * <p>
 * 莱宝CMS—经销商管理—优惠券表 服务类
 * </p>
 *
 * @author KyleWang
 * @since 2022-10-11
 */
public interface ICouponResellerService extends IService<CouponReseller> {

    /**
     * 根据优惠券id和经销商id获取对应的有效优惠券
     */
    CouponReseller getValidCouponById(String id, String resellerId);

    /**
     * 根据经销商id获取所有对应的有效优惠券
     */
    List<CouponReseller> getValidCouponByReseller(String resellerId);

    /**
     * 将对应优惠券标记为已使用
     */
    Boolean markAsUsedById(String id);

    /**
     * 获取当前登录人所有可用优惠券
     */
    List<CouponReseller> getByLoginReseller();

    /**
     * 查找当前登录人可用优惠券
     */
    List<CouponReseller> searchByCode(String code);

    /**
     * 根据id和当前登录经销商查询
     */
    CouponReseller getByIdAndLoginReseller(String id);
}
